php 使用 redis 储存

1.redis 扩展模块安装

        下载模块

1
2
[root@redis ~]# wget https://codeload.github.com/phpredis/phpredis/zip/develop
[root@redis ~]# mv develop phpredis.zip

        也可以下载的时候就重命名

1
[root@redis ~]# wget https://codeload.github.com/phpredis/phpredis/zip/develop -O phpredis.zip
1
2
3
4
5
[root@redis ~]# unzip phpredis.zip
[root@redis ~]# cd phpredis-develop/
[root@redis phpredis-develop]# /usr/local/php/bin/phpize
[root@redis phpredis-develop]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@redis phpredis-develop]# make && make install

        编辑 /usr/local/php/etc/php.ini

1
[root@redis ~]# vim /usr/local/php/etc/php.ini

        增加一行extension = redis.so

1
extension = redis.so

01

        /usr/local/php/bin/php -m |grep redis 检查是否成功

1
[root@redis ~]# /usr/local/php/bin/php -m |grep redis

02

         PHP-redis中文文档

2. redis 实现 session 共享

        php.ini中加入(不建议)

1
2
session.save_handler = "redis"
session.save_path = "tcp://127.0.0.1:6379"

        或者apache虚拟主机加入

1
2
php_value session.save_handler "redis"
php_value session.save_path "tcp://127.0.0.1:6379"

03

        或者php-fpm.conf对应的pool中加入

1
2
php_value[session.save_handler] = redis
php_value[session.save_path] = " tcp://127.0.0.1:6379 "

3. redis 储存 session 测试

1
2
3
[root@redis ~]# wget http://study.lishiming.net/.mem_se.txt
[root@redis ~]# mv .mem_se.txt /usr/local/apache2/htdocs/session.php
[root@redis ~]# curl localhost/session.php

04

        输出类似于 1489247886

1489248876

v2k9k36f309jp5be74uussp3q4

        连接redis:

1
2
3
4
5
6
[root@redis phpredis-develop]# redis-cli
127.0.0.1:6379> keys *
1) "PHPREDIS_SESSION:v2k9k36f309jp5be74uussp3q4"
2) "PHPREDIS_SESSION:36htag7ctc7ueq60hreubhaho3"
127.0.0.1:6379> get PHPREDIS_SESSION:v2k9k36f309jp5be74uussp3q4
"TEST|i:1489247886;TEST3|i:1489247886;"

05